package com.foryou.wechat.service;

import com.foryou.wechat.model.Query;
import com.foryou.wechat.model.dto.ShootDTO;
import com.foryou.wechat.utils.Response;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * <h1>约拍信息接口汇总</h1>
 * Created by Lee.
 */
public interface ShootService {

    /**
     * <h2>得到用户约拍数量</h2>
     * @param userId
     * @return
     */
    int getUserShootCount(Long userId);

    /**
     * <h2>发布约拍信息</h2>
     * @param shootDTO
     * @return
     */
    Response addShoot(ShootDTO  shootDTO);

    /**
     * <h2>得到用户约拍信息集合</h2>
     * @param start
     * @param userId
     * @return
     */
    Response getUserShootList(int start,Long userId);

    /**
     * <h2>得到约拍详情</h2>
     * @param shootId
     * @return
     */
    Response getShootDetailById(Long shootId);

    /**
     * <h2>得到约拍信息集合</h2>
     * @param query
     * @return
     */
    Response getShootList(Query query);

    /**
     * <h2>得到关注的用户约拍信息集合</h2>
     * @param query
     * @return
     */
    Response getIsFollowShootList(Query query);

    /**
     * <h2>收藏该约拍信息</h2>
     * @param shootId
     * @return
     */
    Response collectShoot(Long shootId);

    /**
     * <h2>取消该收藏约拍信息</h2>
     * @param shootId
     * @return
     */
    Response cancelShoot(Long shootId);

    /**
     * <h2>查询已经收藏的约拍信息集合</h2>
     * @param start
     * @param userId
     * @return
     */
    Response queryCollectShootList(int start, Long userId);


}
